package com.encryption.model;

import java.util.Date;

/**
 * File entity. @author MyEclipse Persistence Tools
 */

public class File implements java.io.Serializable {

	// Fields

	private Integer id;
	private int department;
	private int user;
	private int fileLevel;
	private int fileCategory;
	private String name;
	private String type;
	private Date uploadTime;
	private String tag;
	private Integer size;

	private String fileUrl;
	private String swfUrl;
	private String encryptionUrl;

	private User userObject;
	private Department departObj;
	private boolean canDelete = false;
	private boolean canView = false;
	private boolean canPrint = false;
	private boolean canDownload = false;
	private boolean hasOperate = false;

	// Constructors

	/** default constructor */
	public File() {
	}

	public File(Integer id, int department, int user, int fileLevel,
			int fileCategory, String name, String type, Date uploadTime,
			String tag, Integer size, String fileUrl, String swfUrl,
			String encryptionUrl) {
		super();
		this.id = id;
		this.department = department;
		this.user = user;
		this.fileLevel = fileLevel;
		this.fileCategory = fileCategory;
		this.name = name;
		this.type = type;
		this.uploadTime = uploadTime;
		this.tag = tag;
		this.size = size;
		this.fileUrl = fileUrl;
		this.swfUrl = swfUrl;
		this.encryptionUrl = encryptionUrl;
	}

	public boolean isHasOperate() {
		return hasOperate;
	}

	public void setHasOperate(boolean hasOperate) {
		this.hasOperate = hasOperate;
	}

	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public int getDepartment() {
		return department;
	}

	public void setDepartment(int department) {
		this.department = department;
	}

	public int getUser() {
		return user;
	}

	public void setUser(int user) {
		this.user = user;
	}

	public int getFileLevel() {
		return fileLevel;
	}

	public void setFileLevel(int fileLevel) {
		this.fileLevel = fileLevel;
	}

	public int getFileCategory() {
		return fileCategory;
	}

	public void setFileCategory(int fileCategory) {
		this.fileCategory = fileCategory;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}

	public Date getUploadTime() {
		return uploadTime;
	}

	public void setUploadTime(Date uploadTime) {
		this.uploadTime = uploadTime;
	}

	public String getTag() {
		return tag;
	}

	public void setTag(String tag) {
		this.tag = tag;
	}

	public Integer getSize() {
		return size;
	}

	public void setSize(Integer size) {
		this.size = size;
	}

	public String getFileUrl() {
		return fileUrl;
	}

	public void setFileUrl(String fileUrl) {
		this.fileUrl = fileUrl;
	}

	public String getSwfUrl() {
		return swfUrl;
	}

	public void setSwfUrl(String swfUrl) {
		this.swfUrl = swfUrl;
	}

	public String getEncryptionUrl() {
		return encryptionUrl;
	}

	public void setEncryptionUrl(String encryptionUrl) {
		this.encryptionUrl = encryptionUrl;
	}

	public User getUserObject() {
		return userObject;
	}

	public void setUserObject(User userObject) {
		this.userObject = userObject;
	}

	public boolean isCanDelete() {
		return canDelete;
	}

	public void setCanDelete(boolean canDelete) {
		this.canDelete = canDelete;
	}

	public boolean isCanView() {
		return canView;
	}

	public void setCanView(boolean canView) {
		this.canView = canView;
	}

	public boolean isCanPrint() {
		return canPrint;
	}

	public void setCanPrint(boolean canPrint) {
		this.canPrint = canPrint;
	}

	public boolean isCanDownload() {
		return canDownload;
	}

	public void setCanDownload(boolean canDownload) {
		this.canDownload = canDownload;
	}

	public Department getDepartObj() {
		return departObj;
	}

	public void setDepartObj(Department departObj) {
		this.departObj = departObj;
	}

}